// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
// 引入ElementUI
import ElementUI from 'element-ui'
import { Message } from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css'
Vue.use(ElementUI)
//最少引入
// import { Button, Select } from 'element-ui';
// Vue.component(Button.name, Button);
// Vue.component(Select.name, Select);
/* 或写为
 * Vue.use(Button)
 * Vue.use(Select)
 */

//根据路由动态设置title
import VueWechatTitle from 'vue-wechat-title'
Vue.use(VueWechatTitle)

// 全局设置Element-Message的坐标起始位置
const $message = options => {
  return Message({
    ...options,
    offset: 360,
  });
};

//重写一遍success的方法,将offset写入options
['success', 'warning', 'info', 'error'].forEach(type => {
  $message[type] = options => {
    // if (typeof options === 'string') {
      options = {
        message: options,
        offset: 360
      };
    // }
    options.type = type;
    return Message(options);
  };
});
//将$message挂载到this上
Vue.prototype.$message = $message;


Vue.config.productionTip = false

/* eslint-disable no-new */
const APP = new Vue({
  el: '#app',
  router,
  // store,
  components: {
    App
  },
  template: '<App/>',

  // computed: {
  //   ViewComponent() {
  //     // 读取路由配置表
  //     const routeCfg = router.options.routes;
  //     let currentView;// 当前视图
  //     routeCfg.forEach(route => {
  //       if(this.currentRoute.substring(1) === route.path){
  //         currentView = route.name;
  //       }
  //     })
  //     return (currentView
  //       ? require('./pages/' + currentView)
  //       : require('./pages/404')
  //       )
  //   }
  // },
  // render(h) {
  //   // 因为组件是以 es module 的方式引入的，
  //   // 此处必须使用 this.ViewComponent.default 属性作为参数
  //   console.log('渲染', this.ViewComponent.default)
  //   return h(this.ViewComponent.default);
  // },
  // created () {
  //   window.location.hash = window.location.hash ? window.location.hash : '#/';
  //   this.currentRoute = window.location.hash;
  // }
})

// 这里为了监听浏览器 前进/后退 按钮，来切换路由
// window.addEventListener('hashchange', () => {
//   APP.currentRoute = window.location.hash;
// });

export default APP